/**
 * ClassName: Java11_Object
 * Package: PACKAGE_NAME
 * DESCRIPTION:
 *
 * @Author 程翎钥
 * @Create 2024/4/12 16:26
 * @Version 1.0
 */
public class Java11_Object {
    public static void main(String[] args) {
        //TODO 常见类和对象
        //等于
        //基本数据类型，双等号比较数值
//        int i = 10;
//        int j = 10;
//        System.out.println(i == j);
//        double d = 10.0;
//        System.out.println(i == d);
//        //引用数据类型 双等号比较变量内存地址
//        String s = "abc";//字符串常量值
//        String s1 = "abc";
//        String s2 = new String("abc");
//        System.out.println(s == s1);//true
//        System.out.println(s == s2);//flase
//        System.out.println(s.equals(s2));//true
//        User9 user = new User9();
//        User9 user1 = new User9();
//        System.out.println(user == user1);//false
//        System.out.println(user.equals(user1));//false
        //包装类型（它也是引用数据类型）
        //int ->Integer ->JYM为了操作方便，简化了很多操作
        //Integer i = Integer.valueOf(100)//本质上是这么写的，只是我们用很频繁所以简化
        //了
        //Integer缓存操作：-128~127
        Integer i1 = 128;
        Integer i2 = 128;
        System.out.println(i1 == i2);
        System.out.println(i1.equals(i2));
        //所有引用数据类型都用equals

    }
}
//class User9 {
//    @Override
//    public int hashCode() {
//        return 1;
//    }
//
//    @Override
//    public boolean equals(Object obj) {
//        return true;
//    }
//}
